<?php

class UserMenuEnum extends MenuEnum
{
    private static $UdoLeftMenu = array();

    private static $UdoUserMenus = array(
        'Account'                                       => array(
            self::TYPE   => self::MENU_TYPE_LEFT,
            self::PARENT => 0,                          //顶级模块
            self::LABEL  => 'account',
            self::TITLE  => '员工管理',
            self::URL    => '/account/teacherList'
        ),
        'Classes'                                       => array(
            self::TYPE   => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'classes',
            self::TITLE  => '班级管理',
            self::URL    => '/classes/classesList',
        ),
        'Permission'                                    => array(
            self::TYPE  => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL => 'permission',
            self::TITLE  => '权限分配表',
            self::URL   => '/permission/permissionTable',
        ),
        'Exercise'                                      => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'classes',
            self::TITLE  => '题库管理',
            self::URL  => '/exercise/subjectSetting',
        ),
        'Course'                                        => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'course',
            self::TITLE  => '我的课程',
            self::URL  => '/course/scheduleVideo',
        ),
        'Learning'                                      => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'learning',
            self::TITLE  => '学情查看',
            self::URL  => '/learning/learningStudentList',
        ),
        'Teaching'                                      => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'teaching',
            self::TITLE  => '教学查看',
            self::URL  => '/teaching/teachingTeacherList',
        ),
        'Provost'                                      => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'provost',
            self::TITLE  => '教务工作',
            self::URL  => '/provost/provostGroup',
        ),
        'Information'                                      => array(
            self::TYPE => self::MENU_TYPE_LEFT,
            self::PARENT => 0,
            self::LABEL  => 'information',
            self::TITLE  => '信息导入',
            self::URL  => '/information/classImport',
        )
    );

    private static $userMenus = array(
        //管理员
        UserEnum::USER_ROLE_ADMINISTRATOR   => array(

            #人员管理（Account）
            'GetStuffList',            //人员列表
            'GetStuffListPart',        //人员列表ajax
            'Logout',                  //注销

            #班级管理（Classes）
            'GetClassesList',          //班级列表
            'GetClassesListPart',      //班级列表

            #权限信息（Permission）
            'Permission',              //权限分配表

            #题库管理（Exercise）
            'ChooseMode',              //选择录题模式
            'AddSimple',               //简化录题题目添加
            'EditSimple',              //简化录题题目修改
            'KnowSimple',              //简化录题知识点
            'SkillSimple',             //简化录题解题技巧
            'TemplateSimple',          //简化录题模板
            'SimpleSubmit',            //简化录题提交
            'AddStandard',             //标准录题题目添加
            'EditStandard',            //标准录题题目修改
            'GetItemSourceList',       //题目来源
            'GetModelById',            //获取模版
            'GetItemType',             //获取题型
            'GetKnowList',             //获取知识点列表
            'GetKnowInfo',             //获取知识点信息
            'GetSkillList',            //获取解题技巧列表
            'GetSkillInfo',            //获取解题技巧信息
            'ItemSubmit',              //题目提交
            'DeleteModel',             //删除模版
            'GetSubject',              //获取科目
            'GetSubjectPart',          //获取科目ajax
            'ModifySubject',           //修改科目
            'ItemType',                //题型列表
            'ItemTypePart',            //获取题型ajax
            'ModifyItemType',          //修改题型
            'DeleteItemType',          //删除题型
            'Knowledge',               //知识点
            'KnowledgePart',           //知识点ajax
            'ModifyKnowledge',         //修改知识点
            'DeleteKnowledge',         //删除知识点
            'Skill',                   //解题技巧
            'SkillPart',               //解题技巧ajax
            'ModifySkill',             //修改解题技巧
            'DeleteSkill',             //删除解题技巧
            'ItemStore',               //题库搜索
            'ItemStoreItemPart',       //题库搜索ajax
            'MyItemStore',             //我的题库
            'MyItemStoreItemPart',     //我的题库ajax
            'ItemStoreKnowledgePart',  //题库知识点ajax
            'ItemStoreSkillPart',      //题库解题技巧ajax
            'ItemStoreTypePart',       //题库题型ajax
            'ItemStoreTeacherPart',    //题库教师ajax
            'GetItemById',             //题目ID搜索
            'CollectionItem',          //收藏题目
            'CancelCollectionItem',    //取消收藏
            'GetItemVideoDetail',      //题目详情
            'GetItemVideoPart',        //题目详情

            #布置作业（Publish）
            'Schedule',                //课程表
            'SchedulePart',            //课程表ajax
            'HomeworkItem',            //选题
            'HomeworkItemPart',        //选题ajax
            'HomeworkTime',            //发布时间
            'SchedulePart',            //添加课时
            'UpdateHomeworkSession',   //更新作业session
            'SaveDraft',               //保存草稿
            'ModifyHomework',          //编辑作业
            'ExerciseList',            //作业列表
            'ExerciseListPart',        //作业列表ajax
            'PreviewExercise',         //作业详情
            'PrintExercise',           //作业打印
//            'ReleasePeriod',           //发布课时
//            'DeletePeriod',            //删除课时
            'DeleteHomework',          //删除作业

            #我的课程（Course）
            'VideoSchedule',           //课程表-视频
            'VideoSchedulePart',       //课程表-视频ajax
            'NoteSchedule',            //课程表-笔记
            'NoteSchedulePart',        //课程表-笔记ajax
            'PrepareSchedule',         //课程表-备题
            'PrepareSchedulePart',     //课程表-备题ajax
            'VideoList',               //课程列表-视频
            'VideoListPart',           //课程列表-视频ajax
            'NoteList',                //课程列表-笔记
            'NoteListPart',            //课程列表-笔记ajax
            'PrepareList',             //课程列表-备题
            'PrepareListPart',         //课程列表-备题ajax
            'VideoDetail',             //课程列表-视频-详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程列表-视频-详情ajax
            'VideoPlay',               //课程列表-视频-播放
            'NoteDetail',              //课程表-笔记-详情
            'NoteDetail2',              //课程列表-笔记-详情
            'PrepareItem',             //备题-题目阶段
            'PrepareItemPart',         //备题-题目阶段(题目列表块)
            'PreparePeriod',           //备题-课时阶段
            'PreparePeriodInfo',       //备题-获取课时备题信息
            'UpdatePrepareSession',    //备题-更新备题session
            'ModifyPrepare',           //备课-处理提交

            #学情查看（Learning）
            'StudentList',             //学生列表
            'AddStudent',              //添加学员
            'DelStudent',              //删除学员
            'GetStudentList',          //获取学员列表
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'LearningExerciseList',    //作业-作业列表
            'LearningExerciseDetail',  //作业-作业详情
            'LearningFeedbackDetail',  //作业-反馈详情
            'PeriodSchedule',          //课程-课程表
            'PeriodSchedulePart',      //课程-课程表part
            'LearningVideoList',       //课程-视频列表
            'VideoDetail',             //课程-视频详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程-视频详情ajax
            'LearningVideoPlay',       //课程-视频播放
            'LearningNoteList',        //课程-笔记列表
            'LearningNoteDetail',      //课程-笔记-详情


            #教学查看（Teaching）
            'TeacherList',             //教师列表
            'VideoSchedule',           //课程-课程表
            'VideoSchedulePart',       //课程-课程表ajax
            'GetVideoDetail',          //视频详情
            'PrepareList',             //课程-备题列表
            'PrepareListPart',         //课程-备题列表ajax
            'PrepareDetail',           //课程-备题详情
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'HomeworkList',            //作业-作业列表
            'HomeworkListPart',        //作业-作业列表ajax
            'ItemStore',               //题库
            'ItemStoreItemPart',       //题库ajax
            'HomeworkDetail',          //作业详情
            'NoteList',                //笔记列表
            'NoteListPart',            //笔记列表ajax
            'NoteDetail',              //笔记详情
            'ExerciseDetail',          //作业详情

            #教务工作（Provost）
            'Provost',                 //教研组列表
            'AddGroup',                //添加到教研组
            'UpdateResearchGroup',     //更新教研组
//            'SetTeamLeader',           //设置教务组长
//            'DeleteTeacher',           //删除教师
            'RemoveProvost',           //移除教务
            'GetAddProvostInfo',       //获取添加教务信息
            'GetEditProvostInfo',      //获取编辑教务信息
            'GetTeacherListPart',      //获取教师列表
            'GetProvostInfo',          //获取教务信息

            #信息导入（Information）
            'InfoUpload',              //信息导入
            'FileUpload',              //文件上传
            'UploadStatus',            //上传状态

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析
        ),
        //教师
        UserEnum::USER_ROLE_TEACHER   => array(
            #人员管理（Account）
            'GetStuffList',            //人员列表
            'GetStuffListPart',        //人员列表ajax

            #班级管理（Classes）
            'GetClassesList',          //班级列表
            'GetClassesListPart',      //班级列表

            #权限信息（Permission）
            'Permission',              //权限分配表

            #题库管理（Exercise）
            'ChooseMode',              //选择录题模式
            'AddSimple',               //简化录题题目添加
            'EditSimple',              //简化录题题目修改
            'KnowSimple',              //简化录题知识点
            'SkillSimple',             //简化录题解题技巧
            'TemplateSimple',          //简化录题模板
            'SimpleSubmit',            //简化录题提交
            'AddStandard',             //标准录题题目添加
            'EditStandard',            //标准录题题目修改
            'GetItemSourceList',       //题目来源
            'GetModelById',            //获取模版
            'GetItemType',             //获取题型
            'GetKnowList',             //获取知识点列表
            'GetKnowInfo',             //获取知识点信息
            'GetSkillList',            //获取解题技巧列表
            'GetSkillInfo',            //获取解题技巧信息
            'ItemSubmit',              //题目提交
            'DeleteModel',             //删除模版
            'GetSubject',              //获取科目
            'GetSubjectPart',          //获取科目ajax
            'ModifySubject',           //修改科目
            'ItemType',                //题型列表
            'ItemTypePart',            //获取题型ajax
            'ModifyItemType',          //修改题型
            'DeleteItemType',          //删除题型
            'Knowledge',               //知识点
            'KnowledgePart',           //知识点ajax
            'ModifyKnowledge',         //修改知识点
            'DeleteKnowledge',         //删除知识点
            'Skill',                   //解题技巧
            'SkillPart',               //解题技巧ajax
            'ModifySkill',             //修改解题技巧
            'DeleteSkill',             //删除解题技巧
            'ItemStore',               //题库搜索
            'ItemStoreItemPart',       //题库搜索ajax
            'MyItemStore',             //我的题库
            'MyItemStoreItemPart',     //我的题库ajax
            'ItemStoreKnowledgePart',  //题库知识点ajax
            'ItemStoreSkillPart',      //题库解题技巧ajax
            'ItemStoreTypePart',       //题库题型ajax
            'ItemStoreTeacherPart',    //题库教师ajax
            'GetItemById',             //题目ID搜索
            'CollectionItem',          //收藏题目
            'CancelCollectionItem',    //取消收藏
            'GetItemVideoDetail',      //题目详情
            'GetItemVideoPart',        //题目详情

            #布置作业（Publish）
            'Schedule',                //课程表
            'SchedulePart',            //课程表ajax
            'HomeworkItem',            //选题
            'HomeworkItemPart',        //选题ajax
            'HomeworkTime',            //发布时间
            'SchedulePart',            //添加课时
            'UpdateHomeworkSession',   //更新作业session
            'SaveDraft',               //保存草稿
            'ModifyHomework',          //编辑作业
            'ExerciseList',            //作业列表
            'ExerciseListPart',        //作业列表ajax
            'PreviewExercise',         //作业详情
            'PrintExercise',           //作业打印
//            'ReleasePeriod',           //发布课时
//            'DeletePeriod',            //删除课时
            'DeleteHomework',          //删除作业
            'ParseScheduleDate',       //年月周关联解析

            #我的课程（Course）
            'VideoSchedule',           //课程表-视频
            'VideoSchedulePart',       //课程表-视频ajax
            'NoteSchedule',            //课程表-笔记
            'NoteSchedulePart',        //课程表-笔记ajax
            'PrepareSchedule',         //课程表-备题
            'PrepareSchedulePart',     //课程表-备题ajax
            'VideoList',               //课程列表-视频
            'VideoListPart',           //课程列表-视频ajax
            'NoteList',                //课程列表-笔记
            'NoteListPart',            //课程列表-笔记ajax
            'PrepareList',             //课程列表-备题
            'PrepareListPart',         //课程列表-备题ajax
            'VideoDetail',             //课程列表-视频-详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程列表-视频-详情ajax
            'VideoPlay',               //课程列表-视频-播放
            'NoteDetail',              //课程表-笔记-详情
            'NoteDetail2',              //课程列表-笔记-详情
            'PrepareItem',             //备题-题目阶段
            'PrepareItemPart',         //备题-题目阶段(题目列表块)
            'PreparePeriod',           //备题-课时阶段
            'PreparePeriodInfo',       //备题-获取课时备题信息
            'UpdatePrepareSession',    //备题-更新备题session
            'ModifyPrepare',           //备课-处理提交

            #学情查看（Learning）
            'StudentList',             //学生列表
            'AddStudent',              //添加学员
            'DelStudent',              //删除学员
            'GetStudentList',          //获取学员列表
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'LearningExerciseList',    //作业-作业列表
            'LearningExerciseDetail',  //作业-作业详情
            'LearningFeedbackDetail',  //作业-反馈详情
            'PeriodSchedule',          //课程-课程表
            'PeriodSchedulePart',      //课程-课程表part
            'LearningVideoList',       //课程-视频列表
            'VideoDetail',             //课程-视频详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程-视频详情ajax
            'LearningVideoPlay',       //课程-视频播放
            'LearningNoteList',        //课程-笔记列表
            'LearningNoteDetail',      //课程-笔记-详情

            #教学查看（Teaching）
            'TeacherList',             //教师列表
            'VideoSchedule',           //课程-课程表
            'VideoSchedulePart',       //课程-课程表ajax
            'GetVideoDetail',          //视频详情
            'PrepareList',             //课程-备题列表
            'PrepareListPart',         //课程-备题列表ajax
            'PrepareDetail',           //课程-备题详情
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'HomeworkList',            //作业-作业列表
            'HomeworkListPart',        //作业-作业列表ajax
            'ItemStore',               //题库
            'ItemStoreItemPart',       //题库ajax
            'HomeworkDetail',          //作业详情
            'NoteList',                //笔记列表
            'NoteListPart',            //笔记列表ajax
            'NoteDetail',              //笔记详情
            'ExerciseDetail',          //作业详情

            #教务工作（Provost）
            'Provost',                 //教研组列表
            'AddGroup',                //添加到教研组
            'UpdateResearchGroup',     //更新教研组
//            'SetTeamLeader',           //设置教务组长
//            'DeleteTeacher',           //删除教师
            'RemoveProvost',           //移除教务
            'GetAddProvostInfo',       //获取添加教务信息
            'GetEditProvostInfo',      //获取编辑教务信息
            'GetTeacherListPart',      //获取教师列表
            'GetProvostInfo',          //获取教务信息

            #信息导入（Information）
            'InfoUpload',              //信息导入
            'FileUpload',              //文件上传
            'UploadStatus',            //上传状态

            //公共基础部分
            'Logout',                  //注销
        ),
        //学管
        UserEnum::USER_ROLE_CONTACT   => array(
            #权限信息（Permission）
            'Permission',              //权限分配表

            #学情查看（Learning）
            'StudentList',             //学生列表
            'AddStudent',              //添加学员
            'DelStudent',              //删除学员
            'GetStudentList',          //获取学员列表
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'LearningExerciseList',    //作业-作业列表
            'LearningExerciseDetail',  //作业-作业详情
            'LearningFeedbackDetail',  //作业-反馈详情
            'PeriodSchedule',          //课程-课程表
            'PeriodSchedulePart',      //课程-课程表part
            'LearningVideoList',       //课程-视频列表
            'VideoDetail',             //课程-视频详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程-视频详情ajax
            'LearningVideoPlay',       //课程-视频播放
            'LearningNoteList',        //课程-笔记列表
            'LearningNoteDetail',      //课程-笔记-详情

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析
        ),
        //组长
        UserEnum::USER_ROLE_LEADER   => array(

            #权限信息（Permission）
            'Permission',              //权限分配表

            #题库管理（Exercise）
            'ChooseMode',              //选择录题模式
            'AddSimple',               //简化录题题目添加
            'EditSimple',              //简化录题题目修改
            'KnowSimple',              //简化录题知识点
            'SkillSimple',             //简化录题解题技巧
            'TemplateSimple',          //简化录题模板
            'SimpleSubmit',            //简化录题提交
            'AddStandard',             //标准录题题目添加
            'EditStandard',            //标准录题题目修改
            'GetItemSourceList',       //题目来源
            'GetModelById',            //获取模版
            'GetItemType',             //获取题型
            'GetKnowList',             //获取知识点列表
            'GetKnowInfo',             //获取知识点信息
            'GetSkillList',            //获取解题技巧列表
            'GetSkillInfo',            //获取解题技巧信息
            'ItemSubmit',              //题目提交
            'DeleteModel',             //删除模版
            'GetSubject',              //获取科目
            'GetSubjectPart',          //获取科目ajax
            'ModifySubject',           //修改科目
            'ItemType',                //题型列表
            'ItemTypePart',            //获取题型ajax
            'ModifyItemType',          //修改题型
            'DeleteItemType',          //删除题型
            'Knowledge',               //知识点
            'KnowledgePart',           //知识点ajax
            'ModifyKnowledge',         //修改知识点
            'DeleteKnowledge',         //删除知识点
            'Skill',                   //解题技巧
            'SkillPart',               //解题技巧ajax
            'ModifySkill',             //修改解题技巧
            'DeleteSkill',             //删除解题技巧
            'ItemStore',               //题库搜索
            'ItemStoreItemPart',       //题库搜索ajax
            'MyItemStore',             //我的题库
            'MyItemStoreItemPart',     //我的题库ajax
            'ItemStoreKnowledgePart',  //题库知识点ajax
            'ItemStoreSkillPart',      //题库解题技巧ajax
            'ItemStoreTypePart',       //题库题型ajax
            'ItemStoreTeacherPart',    //题库教师ajax
            'GetItemById',             //题目ID搜索
            'CollectionItem',          //收藏题目
            'CancelCollectionItem',    //取消收藏
            'GetItemVideoDetail',      //题目详情
            'GetItemVideoPart',        //题目详情

            #布置作业（Publish）
            'Schedule',                //课程表
            'SchedulePart',            //课程表ajax
            'HomeworkItem',            //选题
            'HomeworkItemPart',        //选题ajax
            'HomeworkTime',            //发布时间
            'SchedulePart',            //添加课时
            'UpdateHomeworkSession',   //更新作业session
            'SaveDraft',               //保存草稿
            'ModifyHomework',          //编辑作业
            'ExerciseList',            //作业列表
            'ExerciseListPart',        //作业列表ajax
            'PreviewExercise',         //作业详情
            'PrintExercise',           //作业打印
//            'ReleasePeriod',           //发布课时
//            'DeletePeriod',            //删除课时
            'DeleteHomework',          //删除作业

            #我的课程（Course）
            'VideoSchedule',           //课程表-视频
            'VideoSchedulePart',       //课程表-视频ajax
            'NoteSchedule',            //课程表-笔记
            'NoteSchedulePart',        //课程表-笔记ajax
            'PrepareSchedule',         //课程表-备题
            'PrepareSchedulePart',     //课程表-备题ajax
            'VideoList',               //课程列表-视频
            'VideoListPart',           //课程列表-视频ajax
            'NoteList',                //课程列表-笔记
            'NoteListPart',            //课程列表-笔记ajax
            'PrepareList',             //课程列表-备题
            'PrepareListPart',         //课程列表-备题ajax
            'VideoDetail',             //课程列表-视频-详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程列表-视频-详情ajax
            'VideoPlay',               //课程列表-视频-播放
            'NoteDetail',              //课程表-笔记-详情
            'NoteDetail2',              //课程列表-笔记-详情
            'PrepareItem',             //备题-题目阶段
            'PrepareItemPart',         //备题-题目阶段(题目列表块)
            'PreparePeriod',           //备题-课时阶段
            'PreparePeriodInfo',       //备题-获取课时备题信息
            'UpdatePrepareSession',    //备题-更新备题session
            'ModifyPrepare',           //备课-处理提交

            #学情查看（Learning）
            'StudentList',             //学生列表
            'AddStudent',              //添加学员
            'DelStudent',              //删除学员
            'GetStudentList',          //获取学员列表
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'LearningExerciseList',    //作业-作业列表
            'LearningExerciseDetail',  //作业-作业详情
            'LearningFeedbackDetail',  //作业-反馈详情
            'PeriodSchedule',          //课程-课程表
            'PeriodSchedulePart',      //课程-课程表part
            'LearningVideoList',       //课程-视频列表
            'VideoDetail',             //课程-视频详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程-视频详情ajax
            'LearningVideoPlay',       //课程-视频播放
            'LearningNoteList',        //课程-笔记列表
            'LearningNoteDetail',      //课程-笔记-详情


            #教学查看（Teaching）
            'TeacherList',             //教师列表
            'VideoSchedule',           //课程-课程表
            'VideoSchedulePart',       //课程-课程表ajax
            'GetVideoDetail',          //视频详情
            'PrepareList',             //课程-备题列表
            'PrepareListPart',         //课程-备题列表ajax
            'PrepareDetail',           //课程-备题详情
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'HomeworkList',            //作业-作业列表
            'HomeworkListPart',        //作业-作业列表ajax
            'ItemStore',               //题库
            'ItemStoreItemPart',       //题库ajax
            'HomeworkDetail',          //作业详情
            'NoteList',                //笔记列表
            'NoteListPart',            //笔记列表ajax
            'NoteDetail',              //笔记详情
            'ExerciseDetail',          //作业详情

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析
        ),
        //教务
        UserEnum::USER_ROLE_PROVOST   => array(

            #权限信息（Permission）
            'Permission',              //权限分配表

            #教务工作（Provost）
            'Provost',                 //教研组列表
            'AddGroup',                //添加到教研组
            'UpdateResearchGroup',     //更新教研组
//            'SetTeamLeader',           //设置教务组长
//            'DeleteTeacher',           //删除教师
            'RemoveProvost',           //移除教务
            'GetAddProvostInfo',       //获取添加教务信息
            'GetEditProvostInfo',      //获取编辑教务信息
            'GetTeacherListPart',      //获取教师列表
            'GetProvostInfo',          //获取教务信息

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析
        ),
        //教务组长
        UserEnum::USER_ROLE_PROVOST_LEADER   => array(

            #人员管理（Account）
            'GetStuffList',            //人员列表
            'GetStuffListPart',        //人员列表ajax
            'Logout',                  //注销

            #班级管理（Classes）
            'GetClassesList',          //班级列表
            'GetClassesListPart',      //班级列表

            #权限信息（Permission）
            'Permission',              //权限分配表


            #教务工作（Provost）
            'Provost',                 //教研组列表
            'AddGroup',                //添加到教研组
            'UpdateResearchGroup',     //更新教研组
//            'SetTeamLeader',           //设置教务组长
//            'DeleteTeacher',           //删除教师
            'RemoveProvost',           //移除教务
            'GetAddProvostInfo',       //获取添加教务信息
            'GetEditProvostInfo',      //获取编辑教务信息
            'GetTeacherListPart',      //获取教师列表
            'GetProvostInfo',          //获取教务信息

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析

        ),
        //高管
        UserEnum::USER_ROLE_ADVANCED_LEADER   => array(


            #人员管理（Account）
            'GetStuffList',            //人员列表
            'GetStuffListPart',        //人员列表ajax
            'Logout',                  //注销

            #班级管理（Classes）
            'GetClassesList',          //班级列表
            'GetClassesListPart',      //班级列表

            #权限信息（Permission）
            'Permission',              //权限分配表

            #学情查看（Learning）
            'StudentList',             //学生列表
            'AddStudent',              //添加学员
            'DelStudent',              //删除学员
            'GetStudentList',          //获取学员列表
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'LearningExerciseList',    //作业-作业列表
            'LearningExerciseDetail',  //作业-作业详情
            'LearningFeedbackDetail',  //作业-反馈详情
            'PeriodSchedule',          //课程-课程表
            'PeriodSchedulePart',      //课程-课程表part
            'LearningVideoList',       //课程-视频列表
            'VideoDetail',             //课程-视频详情
            'VideoDetail2',            //课程-视频详情
            'VideoDetailPart',         //课程-视频详情ajax
            'LearningVideoPlay',       //课程-视频播放
            'LearningNoteList',        //课程-笔记列表
            'LearningNoteDetail',      //课程-笔记-详情


            #教学查看（Teaching）
            'TeacherList',             //教师列表
            'VideoSchedule',           //课程-课程表
            'VideoSchedulePart',       //课程-课程表ajax
            'GetVideoDetail',          //视频详情
            'PrepareList',             //课程-备题列表
            'PrepareListPart',         //课程-备题列表ajax
            'PrepareDetail',           //课程-备题详情
            'HomeworkSchedule',        //作业-课程表
            'HomeworkSchedulePart',    //作业-课程表ajax
            'HomeworkList',            //作业-作业列表
            'HomeworkListPart',        //作业-作业列表ajax
            'ItemStore',               //题库
            'ItemStoreItemPart',       //题库ajax
            'HomeworkDetail',          //作业详情
            'NoteList',                //笔记列表
            'NoteListPart',            //笔记列表ajax
            'NoteDetail',              //笔记详情
            'ExerciseDetail',          //作业详情

            //公共基础部分
            'Logout',                  //注销
            'ParseScheduleDate',       //年月周关联解析
        ),

    );

    public static function getUdoMenus()
    {
        return self::$UdoUserMenus;
    }

    public static function getUserMenus($role_id)
    {
        return self::$userMenus[$role_id];
    }

    public static function getLeftMenu($right)
    {

        self::mkNewMenus(self::getUdoMenus());
        $rightMenus = self::getUserMenus($right);

        $aLeftMenus = array();
        foreach ($rightMenus as $menu) {
            if (self::$UdoUserMenus[$menu][self::TYPE] == self::MENU_TYPE_LEFT)
                $aLeftMenus[] = $menu;
        }

        self::$UdoLeftMenu = self::setMenus($aLeftMenus);

        return self::$UdoLeftMenu;
    }

    public static function getLeftLeafMenu()
    {
        $action = self::getCurrentAction();
        self::getRootParent($action);
        $aLeftMenu = self::$UdoLeftMenu[self::$rootParent];
        $aLeafMenu = array();
        if (array_key_exists(self::LEAF, $aLeftMenu)) {
            foreach ($aLeftMenu[self::LEAF] as $leaf) {
                $leaf['label']                   = Lang::get('system.' . $leaf['label']);
                $aLeafMenu[$leaf[self::GROUP]][] = $leaf;
            }
        }

        return $aLeafMenu;
    }

    public static function getRightMenu($right)
    {
        self::mkNewMenus(self::getUdoMenus());
        $rightMenus  = self::getUserMenus($right);
        $aRightMenus = array();
        foreach ($rightMenus as $menu) {
            if (self::$UdoUserMenus[$menu][self::TYPE] == self::MENU_TYPE_RIGHT)
                $aRightMenus[] = $menu;
        }

        return self::setMenus($aRightMenus);
    }

    public static function getTopMenu($right)
    {
        self::mkNewMenus(self::getUdoMenus());
        $rightMenus = self::getUserMenus($right);
        $aTopMenus  = array();
        foreach ($rightMenus as $menu) {
            if (self::$UdoUserMenus[$menu][self::TYPE] == self::MENU_TYPE_TOP)
                $aTopMenus[] = $menu;
        }

        return self::setMenus($aTopMenus);
    }

    public static function getButtonMenu($right)
    {
        self::mkNewMenus(self::getUdoMenus());
        $rightMenus = self::getUserMenus($right);
        $aButMenus  = array();
        foreach ($rightMenus as $menu) {
            if (self::$UdoUserMenus[$menu][self::TYPE] == self::MENU_TYPE_BUTTON)
                $aButMenus[] = $menu;
        }

        return self::setMenus($aButMenus);
    }
}